 

public class Valida {

    String msg;

    private static boolean validaCNPJ(String cnpj) {
        boolean ret = false;
        String base = "00000000000000";
        if (cnpj.length() <= 14) {
            if (cnpj.length() < 14) {
                cnpj = base.substring(0, 14 - cnpj.length()) + cnpj;
            }

            int soma = 0;
            int dig = 0;
            String cnpj_calc = cnpj.substring(0, 12);
            char[] chr_cnpj = cnpj.toCharArray();
            // Primeira parte
            for (int i = 0; i < 4; i++) {
                if (chr_cnpj[i] - 48 >= 0 && chr_cnpj[i] - 48 <= 9) {
                    soma += (chr_cnpj[i] - 48) * (6 - (i + 1));
                }
            }
            for (int i = 0; i < 8; i++) {
                if (chr_cnpj[i + 4] - 48 >= 0 && chr_cnpj[i + 4] - 48 <= 9) {
                    soma += (chr_cnpj[i + 4] - 48) * (10 - (i + 1));
                }
            }
            dig = 11 - (soma % 11);
            cnpj_calc += (dig == 10 || dig == 11) ? "0" : Integer.toString(dig);
            // Segunda parte
            soma = 0;
            for (int i = 0; i < 5; i++) {
                if (chr_cnpj[i] - 48 >= 0 && chr_cnpj[i] - 48 <= 9) {
                    soma += (chr_cnpj[i] - 48) * (7 - (i + 1));
                }
            }
            for (int i = 0; i < 8; i++) {
                if (chr_cnpj[i + 5] - 48 >= 0 && chr_cnpj[i + 5] - 48 <= 9) {
                    soma += (chr_cnpj[i + 5] - 48) * (10 - (i + 1));
                }
            }
            dig = 11 - (soma % 11);
            cnpj_calc += (dig == 10 || dig == 11) ? "0" : Integer.toString(dig);
            ret = cnpj.equals(cnpj_calc);

        }

        return ret;
    }

    public String caracteres(String valor, Integer campos, String titulo) {
        if (valor == null) {
            this.msg = "O Campo " + titulo + " Não Pode Ficar em Branco";
        } else {
            if (valor.length() < campos) {
                this.msg = "O Campo " + titulo + " Tem Que Ter No Minimo " + campos + " Caracteres";
            }
        }
        return msg;
    }

    public static boolean validarEmail(String email) {
        return (email.matches("^([0-9a-zA-Z]+([_.-]?[0-9a-zA-Z]+)*@[0-9a-zA-Z]+[0-9,a-z,A-Z,.,-]*(.){1}[a-zA-Z]{2,4})+$"));
    }
}
